The use of standardised formats for the exchange of documents over networks has become quite important with the wide use of the external, public Internet and internal, private intranets that are found within corporations. This information is commonly exchanged in so called web pages i.e. documents that are posted to a unique address. Such web pages are generally presented through the use of a mark-up language. The currently most common mark-up language is HTML or Hyper Text Mark-up Language. However, there are other mark-up languages including DHTML and XML that are currently in use or will be in use in the near future.
However, as the content of the web becomes richer it has become more common to find documents that are present in different formats which require specific applications for access to them. Some of these formats have become quasi standard for their particular application because of their widespread use. An example of such an application is Adobe Acrobat, Adobe Systems Inc., and its PDF (Portable Document Format) files. In order to read files of the various formats one must have the particular application installed locally. In cases where the file format is not common or the client is not configured with the appropriate application, the appropriate application must be downloaded and installed before the file can be accessed. This procedure usually includes exiting the browser, installing the program, and restarting the computer.
The above situation may also arise with respect to documents on a local corporate intranet. In this case documents of interest are selected by clients using clients of a network. Again the application required for the viewing and or manipulation of a requested web page, including any documents contained therein, may not be located on a client computer. Currently a system administrator of the corporation must either locally or remotely install the required application on the local machine. Again the client must often exit the browser application, install the required application and restart the computer. An analogous situation arises when a document was generated in a more recent version of an application than what currently resides on the client.
In the case of an installation it will be assumed that there are no files associated with the application currently located on the client therefore requiring that all files related to the application must be installed. In the case of an update it is assumed there are files associated with the application located on the computer. Some or all of these files will be re-installed during the updating procedure. There may also be files associated with the most recent version of the application that are not currently installed on the client and therefore must be installed during the update.
There are known approaches to the installation or updating of an application that is required for viewing and or manipulation of a document. It is common to encounter documents that have been posted on the Internet which have been created with an application that the requesting client does not have on their local machine. When such a document is encountered the client is queried as to whether they would like to install the appropriate application on their computer. If they respond positively they are directed to the appropriate web site, via a Universal Resource Locator (URL), where links are provided that facilitate the installation or updating. This process often occurs with a certain amount of user interaction however it can take place seamlessly without the need to exit the browser with a special implementation by the application in question. It often however occurs in a similar manner as a program installation. In these cases there is a dialogue, that is initiated by the remote server, concerning the updating or installation.
An alternative approach has been proposed which addresses the seamlessness of the procedure. There are approaches that are operable for applications written in a specific language. In one example the updating or installation and invoking application is specific to Java applications and it requires the user have the updating or installation and invoking application pre-installed on their client. However there are no known approaches that provide an automatic updating or installation of a required application that are independent of the application and browser, do not require pre-installed functionality on the client and do not require the client be rebooted after installation.
Therefore, there is a need for a system and method for providing a required application to a client automatically. Further the system and method should mitigate intervention by the client's user, be independent of the application, and not require that the client be rebooted after provision of the application.